Objective Functions for Multi-Way Number Partitioning

نویسنده

  • Richard E. Korf
چکیده

The number partitioning problem is to divide a set of integers into a collection of subsets, so that the sum of the numbers in each subset are as nearly equal as possible. There are at least three natural objective functions for number partitioning. One is to minimize the largest subset sum, another is to maximize the smallest subset sum, and the third is to minimize the difference between the largest and smallest subset sums. I show that contrary to my previous claims, no two of these objective functions are equivalent for partitioning numbers three or more ways. Minimizing the largest subset sum or maximizing the smallest subset sum correspond to different practical applications of number partitioning, and both allow a recursive strategy for finding optimal solutions that is very effective in practice. Finally, a completely new version of this recursive strategy appears to reduce the asymptotic complexity of the algorithm, and results in orders of magnitude improvement over the best previous results for multi-way partitioning. Introduction: Number Partitioning Given a multiset of integers, the number partitioning problem is to divide them into a collection of mutually exclusive and collectively exhaustive subsets, so that the sum of the numbers in each subset are as nearly equal as possible. For example, if we divide the integers {13,9,9,6,6,6} into the subsets {13,6,6} and {9,9,6}, the sum of the numbers in the subsets is 25 and 24, respectively, which is optimal in this case. This is also a perfect partition. If the sum of all the numbers is divisible by the number of subsets, in a perfect partition all subsets will have the same sum. Otherwise they will differ by at most one. I focus here on optimal solutions. Number partitioning is perhaps the simplest NP-complete problem to describe. It represents a very simple scheduling problem, often referred to as “multi-processor scheduling”(Garey and Johnson 1979). Given a set of jobs, each with an associated completion time, and two or more identical processors, assign each job to a processor to minimize the total time to complete all the jobs, assuming that each job must run on a single processor without interruption. A recent application of number partitioning is to voting manipulation (Walsh 2009). Assume an election with three Copyright c © 2010, Association for the Advancement of Artificial Intelligence (www.aaai.org). All rights reserved. or more candidates, where each voter vetoes one of the candidates, and different voters have different weights. The winner is the candidate with the smallest total weight of vetoes. The question is how can a subgroup of the voters, known as the manipulators, guarantee the election of their chosen candidate, assuming that they know the votes of all the non-manipulators. The best strategy for the manipulators is to distribute the weights of their votes among the other candidates, so that the minimum total weight of vetoes received by the other candidates is greater than the weight of vetoes received by their chosen candidate from the nonmanipulators. This is also a number partitioning problem. Number Partitioning Objective Functions There are at least three natural objective functions for number partitioning: minimizing the largest subset sum, maximizing the smallest subset sum, and minimizing the difference between the largest and smallest subset sums. For two-way partitioning, all three of these objective functions are equivalent. The sum of the two subset sums in any two-way partition always equals the sum of all the numbers. Thus, given a two-way partition, reducing the largest subset sum must increase the smallest subset sum, and also reduce the difference between them. Similarly, increasing the smallest subset sum must reduce the largest subset sum, and also reduce the difference between them. Finally, reducing the difference between the largest and smallest subset sums requires increasing the smallest subset sum and decreasing the largest subset sum. Thus, optimizing any one of these objectives simultaneously optimizes the other two. For three or more way partitioning, I previously assumed and reported that minimizing the largest subset sum was equivalent to minimizing the difference between the largest and smallest subset sum. For example, (Korf 1998) minimizes the difference between the largest and smallest subset sums, and states that, “This also minimizes the largest subset sum.” (pp. 196). (Korf 2009) makes the same assumption. For partitioning three or more ways, however, all three objective functions are distinct. For example, consider partitioning {13,9,9,6,6,6} three ways. Let partition x be {13,6}, {9,6}, and {9,6}, with subset sums of 19 and 15. Partition x maximizes the smallest subset sum (15). Let partition y be {13}, {9,9} and {6,6,6}, with subset sums of 13 and 18. Partition y minimizes the largest subset sum (18), even though 71 Proceedings of the Third Annual Symposium on Combinatorial Search (SOCS-10)

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Solving the tandem AGV network design problem using tabu search: Cases of maximum workload and workload balance with fixed and non-fixed number of loops

A tandem AGV configuration connects all cells of a manufacturing area by means of non-overlapping, sin-gle-vehicle closed loops. Each loop has at least one additional P/D station, provided as an interface between adjacent loops. This study describes the development of three tabu search algorithms for the design of tandem AGV systems. The first algorithm was developed based on the basic definiti...

متن کامل

Multi Objective Inclined Planes System Optimization Algorithm for VLSI Circuit Partitioning

In this paper multi objective optimization problem for partitioning process of VLSI circuit optimization is solved using IPO algorithm. The methodology used in this paper is based upon the dynamic of sliding motion along a frictionless inclined plane. In this work, modules and elements of the circuit are divided into two smaller parts (components) in order to minimize the cutsize and area imbal...

متن کامل

A Hybrid Recursive Multi-Way Number Partitioning Algorithm

The number partitioning problem is to divide a given set of n positive integers into k subsets, so that the sum of the numbers in each subset are as nearly equal as possible. While effective algorithms for two-way partitioning exist, multi-way partitioning is much more challenging. We introduce an improved algorithm for optimal multi-way partitioning, by combining several existing algorithms wi...

متن کامل

Multi-Way Number Partitioning

The number partitioning problem is to divide a given set of integers into a collection of subsets, so that the sum of the numbers in each subset are as nearly equal as possible. While a very efficient algorithm exists for optimal two-way partitioning, it is not nearly as effective for multi-way partitioning. We develop two new linear-space algorithms for multi-way partitioning, and demonstrate ...

متن کامل

AERO-THERMODYNAMIC OPTIMIZATION OF TURBOPROP ENGINES USING MULTI-OBJECTIVE GENETIC ALGORITHMS

In this paper multi-objective genetic algorithms were employed for Pareto approach optimization of turboprop engines. The considered objective functions are used to maximize the specific thrust, propulsive efficiency, thermal efficiency, propeller efficiency and minimize the thrust specific fuel consumption. These objectives are usually conflicting with each other. The design variables consist ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010